package com.dd.ms.auth.pojo.DO;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.dd.ms.common.pojo.annotation.Explanation;
import lombok.Builder;
import lombok.Data;

/**
 * @Author liuxianmeng
 * @CreateTime 2025/7/9 11:58
 * @Description 权限DO
 */
@Data
@Builder
@TableName(value = "permission", autoResultMap = true)
public class PermissionDO {
    @TableId(type = IdType.AUTO)
    @Explanation(value = "权限ID，自增主键，唯一标识每个权限")
    private Long perId;
    @Explanation(value = "权限名称，全局唯一")
    private String perName;
    @Explanation(value = "权限描述，对权限的详细解释，有助于理解权限的具体范围")
    private String perDesc;
    @Explanation(value = "权限范围，资源范围可以指的是整个应用all，也可以指应用下的某一个模块module，" +
            "也可以指的是某个模块下的某个具体功能function")
    private String perScope;
    @Explanation(value = "权限操作类型，增删改查（1111），增改查（1011），查（0001）")
    private String perOpLevel;
    @Explanation(value = "上一级权限id")
    private Long perParentId;
    @Explanation(value = "权限所属应用")
    private Long appId;
}
